home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-03-22 | 3.1 KB | 76 lines | [TEXT/MPS ] |
- TestClient Native is an application used by the Speech Recognition group to test the
- functionality of the Speech Recognition API. While some features have been disabled
- in this version, it is still very useful for prototyping different language models
- which can be easily read in from a text file. One such example text file,
- 'Test Grammar.tc,' is provided.
-
- Basic instructions:
- 1) Launch TestClient Native.
- 2) Choose 'Open… Live Desktop' from the file Menu. This allocates a recognizer and opens
- a window onto the state of the recognizer.
- 3) Click 'Start Listening'. Now when you speak, recognition results are posted as text;
- otherwise no action is taken.
- 4) To see the currently active language model (what the recognizer is listening for)
- choose 'Paste Grammar' from the Grammar menu.
- 5) To select another built in grammar, choose it from the Grammar menu.
- 6) To select another file-based grammar, choose 'Open Grammar Text…' from the Grammar menu.
- TestClient Native will parse the text file, making the necessary Speech Recognition API
- calls to build the language model described in the file. If there's a problem with
- the content of the file, TestClient Native will do its best to let you know why.
-
- There are also controls allowing one to request Begin-Detect notification. When this
- option is used, the recognizer will enter the 'Search Waiting' state until you click
- the 'Continue Recognition' button (this is useful when one wishes to build language
- models dynamically). Another check box allows one to specify whether the recognition
- results should be delivered by AppleEvent or callback. The 'Speed vs. Accuracy' pop
- up sets the kSpeedVsAccuracyParam of the recognizer to 0, 35 or 80, for Accurate,
- Compromise and Fast, respectively. Finally, you can experiment with mulitiple
- recognizer windows.
-
- Here's a complete description of the grammar used by TestClient Native to parse language model
- descriptions:
-
- Backus-Naur Form Context Free Grammar for PlainTalk Language Models:
-
- <ws> ::== // white space; explicit references to <ws> have been
- ' ' | // left out of the following productions,
- '\n' | // however <ws>* is assumed to delimit each
- '\t'; // terminal & nonterminal in each production.
-
- <language model assignment> ::==
- <lhs> '=' <rhs> ';'
-
- <lhs> ::==
- <lm> | // default finishing (kAddPauses)
- '[' <lm> ']' | // + Optional
- <lm> '*' | // + Repeat
- <lm> 'j' '=' <number> // + reJection
- <lm> <flagSpec> // + arbitrary flag combination
-
- <flagSpec> = 'ronpj' | ... | 'RONPj' | // ...=> all possible upper/lower case
- 'ronpJ' '=' <number> | // combinations of 'RONPJ'
- . // allows setting of Repeat, Optional,
- . // Noise, Pauses & reJection flags
- . // independently.
- 'RONPJ' '=' <number>;
-
- <number> ::== [0-9]+
-
- <lm> ::==
- '<' <word> '>'
-
- <word> ::==
- [[a-z,A-Z,',",-,0-9]] // standard pascal identifier with ' & "
-
- <rhs> ::==
- <phrase> |
- <phrase> '|' <rhs>
-
- <phrase> ::==
- <word> |
- <lm> |
- <word> <phrase> |
- <lm> <phrase>
-
- NOTE that default finishing adds pauses.
-